package com.tedu.api.ee;

/**
 * 考试题：throw与throws的区别
 * 异常关键字：throw---主动抛出异常
 *              throws---抛出异常不解决  √
 *                  语法：定义在单元方法或者主方法后面，异常对象名称，多个异常对象逗号分割
 *                  指定主动抛出异常对象名字
 *
 *                  throws new RuntimeException()
 *            特点：定义异常，原因程序不合理
 *
 *            throws---抛出异常  【被动抛出异常】
 *                  throws IOException，Exception
 *                特点：抛出异常中存在较大异常，小异常去掉，包括小异常！
 *                抛出异常都是同等级：小异常！
 *
 *
 *              RunTimeException允运行期异常：1主动产生异常
 *                                          2控制台产生异常
 */
public class Person {
    private int age;//私有属性

    public int getAge() {
        return age;
    }

    public void setAge(int age) {//设置年龄：0~120岁，主动抛出
        if (age<0||age>120) { //判断:人 年龄超出 在0~120之间---主动抛出异常【true】
            throw new RuntimeException("年龄不合规~");
        }
        this.age = age;
    }

    public static void main(String[] args) {
        Person p=new Person();
        p.setAge(120);
        System.out.println("我的年龄是:"+p.getAge()+"岁");
    }
}